package com.tbocek.android.ode.controller;
import java.util.List;

import com.tbocek.android.ode.solver.ODESystem;
import com.tbocek.android.ode.solver.Solver;
import com.tbocek.android.ode.solver.SystemState;


/**
 * Collects the information required to perform a computation into one package
 * @author Tim
 *
 */
public class ComputationSpec {
	public ComputationSpec(Solver solver, SystemState initialState, ODESystem system, float finalTime) {
		mSolver = solver;
		mInitialState = initialState;
		mSystem = system;
		mFinalTime = finalTime;
	}
	
	public List<SystemState> solve() {
		return mSolver.solve(mSystem, mInitialState, mFinalTime);
	}

	private Solver mSolver;
	private SystemState mInitialState;
	private ODESystem mSystem;
	private float mFinalTime;
}
